如果你想长期做 node 开发, 或者想快速更新 node 版本, 或者想快速切换 node 版本, 那么在非 Windows(如 osx, linux) 环境下, 请使用 nvm 来安装你的 node 开发环境, 保持系统的干净。如果你使用 Windows 做开发, 那么你可以使用 nvmw 来替代 nvm
nvm 的全称是 Node Version Manager,之所以需要这个工具,是因为 Node.js 的各种特性都没有稳定下来,所以我们经常由于老项目或尝新的原因,需要切换各种版本
安装nvm
1 | $ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.30.2/install.sh | bash |
查看nvm安装是否成功,输入nvm
1 | $ nvm |
通过 nvm 安装任意版本的 node,可以指定版本号,或者用stable(稳定版)代替
1 | $ nvm install stable |
通过 nvm 安装任意版本的 iojs
1 | $ nvm install iojs |
查看安装的node,箭头指向的就是当前使用的node版本
1 | $ nvm ls |
nvm常用命令
1 | nvm install v0.10.32 Install a specific version number |
使用 cnpm 加速 npm
同理 nvm , npm 默认是从国外的源获取和下载包信息, 所以可能会比较慢. 可以通过简单的 —registry 参数, 使用国内的镜像 http://registry.npm.taobao.org
1 | $ npm install koa --registry=http://registry.npm.taobao.org |
毕竟镜像跟官方的 npm 源还是会有一个同步时间差异, 目前 cnpm 的默认同步时间间隔是 10 分钟. 如果你是模块发布者, 或者你想马上同步一个模块, 那么推荐你安装 cnpm cli
1 | $ npm install cnpm -g --registry=http://registry.npm.taobao.org |
通过 cnpm 命令行, 你可以快速同步任意模块
1 | $ cnpm sync koa connect mocha |
例如我想马上同步 koa, 直接打开浏览器: http://npm.taobao.org/sync/koa
或者在命令行中通过 open 命令同步
1 | $ open http://npm.taobao.org/sync/koa |
当开启一个新的 shell 窗口时,找不到 node 命令的情况
这种情况一般来自两个原因
1、shell 不知道 nvm 的存在
2、nvm 已经存在,但是没有 default 的 Node.js 版本可用。
解决方式
1、检查 ~/.profile 或者 ~/.bash_profile 中有没有下面的语句,没有的话就通过vim添加进入
1 | export NVM_DIR="/Users/geekspeng/.nvm" |
注意:
- ~/.bashrc虽然有上面的语句但是每次新开命令行都要source ~/.bashrc,按理来说修改后source一次后面就不需要souce了
- ~/.bashrc包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取)
2、 调用nvm ls 查看default 的指向
1 | $ nvm ls |
如果default没有指向的话,执行nvm alias default stable指定版本,执行完后再查看下
1 | $ nvm alias default stable |